Co-browsing enables two or more individuals, usually remotely located, to use a web browser to interact with web pages together, while seeing the same view in a synchronized manner.
Co-browsing of websites can be very effective in various scenarios, for example in support and sale interactions between company representatives and website visitors. Users can make use of co-browsing to provide better customer support—assisting customers with their visit on the site, or to increase sales—e.g. to discuss product displayed on the site pages. In particular, there is a growing interest for a co-browsing solution that does not require software installation or special plug-ins and only makes use of modern web browsers.
Early co-browsing was achieved by local execution of software that had to be installed on the computer of each participant. More advanced tools didn't have to be installed, but still required local execution of software or at least web-browser plug-ins, extensions, or applets. Most tools were limited to a single user that was able to navigate or led a session, while the other users could only watch.
Some tools provide very limited co-browsing by only synchronizing the page location (URL) of the page that should be shared.
Proxy server based co-browsing solutions have certain important limitations. In general, the proxy server fetches the page and passes a modified version to each user; references (paths, hyperlinks) to the original website are replaced with references to the proxy. When a user navigates the site, the proxy in turn performs the actions on the website and returns the modified pages to each user etc. Proxy serve based solutions generally include the following disadvantages:
Another known solution is Server user-agent access. However, there are websites that do not allow a server (“robot”) user-agent to access their site, therefore excluding these sites for the proxy-based co-browsing solution.
Further, in cases where browsing is performed by the proxy's user-agent, cookies are saved on the proxy and not on the user's machine. This means that important cookie-saved information (such as content of shopping basket or preferred language) may be lost when co-browsing users use the page. On sites where cookies are relied on for login, a login done using the proxy server will not be available for the user the next time s/he visits the site using his/her own browser.
Security and pages requiring login often include sensitive data such as user names and login details that need to be transferred through the proxy server and not inputted directly by the user on a browsed website. This is less secure and may be unacceptable in scenarios where higher-security standards required by users.
JavaScript usage often “relies” on pages coming from a certain URL. As references to the original site are replaced with ones to the proxy, these instances will likely result in errors, causing the co-browsing not to be executed correctly.
A solution for co-browsing that answers the limitations of the current methods described above would be advantageous. Such enhanced co-browsing should aim to support automatic synchronization of the browsers' state and content, including frames, portlets, or even content of the form fields and controls.